package com.zackary.spring_blogs.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.util.Date;

/**
 * @author Administrator
 * @version 1.0
 * @description: TODO
 * @date 2024/11/19 9:22
 */
@Data
public class BlogCategory {
    private Integer categoryId;
    private String categoryName;
    private String categoryIcon;
    private int    categoryRank;
    private Byte isDeleted;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private Date createTime;
    //重写setCategoryName，作用去除字符串内容两边没用的空格或换行符
    public void setCategoryName(String categoryName) {
        this.categoryName = categoryName== null ? null : categoryName.trim();
    }
    public void setCategoryIcon(String categoryIcon) {
        this.categoryIcon = categoryIcon == null ? null : categoryIcon.trim();
    }
    //    toString方法并不是JSON格式输出
//    而是性能提升如果直接使用字符串的连接操作符（如 +），在
//    Java 中，每次进行字符串连接都会创建一个新的字符串对象
    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", categoryId=").append(categoryId);
        sb.append(", categoryName=").append(categoryName);
        sb.append(", categoryIcon=").append(categoryIcon);
        sb.append(", categoryRank=").append(categoryRank);
        sb.append(", isDeleted=").append(isDeleted);
        sb.append(", createTime=").append(createTime);
        sb.append("]");
        return sb.toString();
    }

}
